import { VideoState } from "@/pages/room/ws/ws.ts";
import type { UserModel } from "@/api/model/user.model.ts";
import type { IChatMessage } from "@/pages/room/components/chat/chat-message.ts";

export interface RoomInfo {
    id: string,
    creator: UserModel,
    name: string,
    capacity: number,
    users: UserModel[],
    video: VideoInfo
}

export interface VideoInfo {
    url?: string,
    state: VideoState,
    speed: number,
    time: number
}


export interface ReactiveData {
    /**
     * 整个页面是否加载中
     */
    loading: boolean,

    /**
     * 加载提示
     */
    loadingDescription: string,

    /**
     * 房间信息
     */
    room?: RoomInfo,

    /**
     * 聊天信息集合
     */
    chats: IChatMessage[],

    /**
     * 聊天信息框内容
     */
    chatMessage: string
}